In a first prior method, vertical velocity of a vehicle was determined. This method is taught in U.S. Pat. No. 5,381,384, issued Jan. 10, 1995. The teachings of the '384 patent are incorporated herein by reference.
In the first prior method, a first cost curve was generated from a first cost function. The first cost function was generated from a first correlation time between two of three bottom return pulses, such as the first and second bottom return pulses. A second cost curve was generated from a second cost function. The second cost function was generated from a second correlation time between another two of the three bottom return pulses, such as the first and third bottom return pulses.
In the first method, a combined cost curve was generated by using the cost value of either the first or second cost function, depending on whether the value of the first cost function at a particular vertical velocity was lower or higher than the value of the second cost function at that particular vertical velocity. The velocity at the absolute minimum of the combined cost curve was then taken as the true vertical velocity of the vehicle.
In a second prior method, vertical velocity of a vehicle was determined. An independently approximated vertical velocity VEC was used. A velocity increment (delta Vn) was determined based on a first time TA. The velocity increment was added and subtracted from the approximated vertical velocity VEC, in order to produce side velocities.
In the second prior method, a Fletcher-Powell estimation technique was then used on a first cost function, at each of these three velocities VEC, VEC+ delta Vn and VEC− delta Vn, to find minimum cost values of three lobes of the first cost function. Normally three minimum cost values, i.e. costs, of the first cost function would be determined as a part of the estimation technique. Finding a minimum cost value of a lobe of the first cost function is referred to as a cardinal search. The three minimum cost values are found as a result of three cardinal, that is linear, searches on the first cost function. Three minimum-related cardinal direction search velocities, associated with the three cost minimum values of the first cost function, were also found. Three lobes of the first cost function will usually be associated with the three cardinal search velocities.
In the second method, the resultant three cardinal search velocities were then used in a second cost function. Three other minimum cost values, for the second cost function, were found, using the Fletcher-Powell estimation technique with each of these three cardinal direction velocities. These latter three searches on the second cost function are referred to as optimal or non-linear searches. These three optimal direction searches produces three optimal direction search velocities. The three optimal search velocities were identified at these latter three minimum cost values of the second cost function. Three lobes of the second cost function will usually be associated with the three optimal direction search velocities. The three velocities that produced the lowest minimum cost values for the three lobes (i.e. lobe values) of the first cost function Y, and the three velocities that produced the lowest minimum cost values for the three lobes (i.e. lobe values) of the second cost function were compared and one velocity was taken as the true vertical velocity.
Before the lobe that is at the true velocity could be chosen, the second method required that three minimum velocities, VMF1, VMF2 and VMF3 of the first cost function Y be found. These three calculations were made even though only one value (i.e. lobe) of the first cost curve Y is at the true velocity.
In the second method, the non-linear, optimal, search used a second cost curve to resolve ambiguities in the vertical channel.
Again this second method, using extensive lobe searching, began with an initial estimate of velocity (VEC) used to determine the minimum velocities (VMF1, VMF2, VMF3). By moving plus and minus of the velocity VEC, a total of three velocities, and normally three lobes, were chosen as possible candidates for determining the location of the true cost function minimum.
The second method used an algorithm to search for the minimum cost on each of the three lobes of the first cost function. The second method used both linear and non-linear direction searches, referred to as cardinal and optimal searches respectively.
In the second method, before the lobe containing the true cost function minimum could be chosen, the three lobe search algorithm required that detailed searching be performed on three lobes of both cost curves. Thus a highly refined cost minimum was determined for each of the three lobes of each of two cost functions under consideration, even though only one lobe contains the true cost function minimum.
In the present method, a main lobe velocity VMF is found. Further there are significantly different processing steps from the processing steps of the second method. The present method takes increased advantage of the a priori knowledge, i.e. an independently determined approximate velocity, concerning the cost function sensitivity to the parameters being estimated. That is, the independent knowledge of the approximate vertical velocity is further used to speed up processing. As a result of this knowledge, it is possible to reduce the processing steps used in the brut force application of the estimate technique.
In the present method, ambiguities in the vertical velocity are resolved by the use of a Fletcher-Powell interation technique on a single lobe of each of first cost function Y and second cost function Y′.
In the earlier second method, a Fletcher-Powell interation technique was performed on three lobes of each of first cost function Y and second cost function Y′.
Thus, in the present method, a lobe minimum is found in cost function Y near only the initial estimated velocity, VEC. The velocity at this lobe mimimum is a main lobe veolcity VMF. In the earlier second method a lobe minimum in cost function Y was found near each of VEC, VEC+delta Vn and VEC−delta Vn, were delta Vn is a calculated velocity increment.
In the present invention, lobe spacing is used with main lobe velocity VMF, to provide three new velocities at which to calculate three cost values of the second cost function Y′, but not the first cost function.
In the earlier second method lobe spacing is used with initial estimated velocity VEC, to provide for three estimated input velocities at which to find minima in cost values on three lobes of the first cost function Y and on three lobes of the second cost function.
Again, in the present invention, lobe selection is used on three lobes of the second cost function Y′, but not on three lobes of the first cost function Y.
Again, in the earlier second method, lobe selection is used on three lobes of the first cost function Y and on three lobes of the second cost function Y′.
Detailed Description of the Earlier Second Method:
The earlier second method used a Fletcher-Powell iteration function. The interation function estimated a sonar velocity, VMF, from each set of correlation data arrays, AMAT, in a receive window. This sonar velocity estimate is the result of a maximum likelihood estimator implemented using a Fletcher-Powell interation technique. This estimator minimizes a cost function Y that relates a correlation data array and a mathematical model of of that data array. The model is a function of sonar velocity, the varible in the iteration process. The resulting velocity VMF has an ambiguity in the eta direction (near vertical) that is resolved.
The primary outputs were VMF and NVA. If the speed of sound (C) received from the Receiver Control and Display Console (RC/DC) is negative, Fletcher-Powell sends the message TMALF to the NSP and uses |C|.
Each sonar velocity results from two activities: the first determines velocities that correspond to minimum cost on each of three chosen ambiguous velocity lobes and the second resolves the ambiguities. Cost, a function of velocity, is a measure of the similarity between the sonar data array (AMAT) and a mathematic model (RMAT) of that data array. This model, RMAT, is a function of velocity, hydrophone channel pairs (ICORR or ICORR6), the three returns [P1(N), P2(N), P3(N)] and the power scaling factor (BIG). Cost is minimized by iteratively varying the velocity assumption of the model until a cost minimum is achieved, within some convergence criteria. This iteration procedure incorporates a Fletcher-Powell minimization technique.
The Fletcher-Powell algorithm involves two different functional iteration loops. These loops were loops #1 and #2. The Fletcher-Powell algorithm consists of a sequence of cardinal searches, each for a cost function minimum in a sequentially chosen direction. Each cardinal search requires multiple iterations though loop #1 before a cost minimum is found. The search is a step—step search; each step requires one circuit of loop #1. Whenever a cost minimum is found by a cardinal search, the Fletcher-Powell algorithm shall execute a single cycle through loop #2, which determines an optimal direction. After that single circuit of the Update Direction loop (#2) the algorithm shall return, via the Linear Search function to the Linear Search Loop (#1) for another cardinal search for a cost minimum. Again, multiple circuits about loop #1 may be expected before another cost minimum prompts another single circuit about loop #2. This sequence shall repeat until a check reveals that the set of convergence criteria has been met, signifying that a cost minimum has been found. At that point, the Fletcher-Powell algorithm shall be exited, and loop #3, the Lobe Search Loop, entered.
There is one circuit through loop #3, the last step of that loop transitions to another lobe of the cost function and reenters the Fletcher-Powell algorithm for the new lobe, via the Linear Search function in loop #1. The Fletcher-Powell algorithm, with multiple cardinal searches, each of multiple circuits about loop #1 followed by a single circuit about loop #2, is executed three times, (once for each of three lobes of the cost function) before the true cost minimum is selected.
A more detailed discussion of each of the four loops of the earlier second technique follows: